The present application relates to arithmetic processing means and, more particularly, to novel means, utilizing at least one COrdinate Rotation DIgital Computer, for multiplying a pair of complex numbers.
In many forms of modern electronic equipment, signal processing functions of great relative complexity, such as correlation detection, discrete Fourier transformation and the like, are utilized. The basic signal processing element is a multiply-accumulate cell; for certain systems, such as ultrasonic imaging utilizing baseband signal processing and the like, fully complex signals must be multiplied. Similar complex multiplication of electronic signals can be found in many other signal processing disciplines, such as radar, sonar and the like, and especially for processing digital signals, particularly of the binary type. It is therefore highly desirable to provide digital signal means for carrying out the complex multiplication of a pair of digital signals, each representing a complex number, of the form x+jy or R,.angle..theta..
The prior art teaches the use of the CORDIC (COordinate Rotation DIgital Computer) apparatus and technique, as initially described by JE Volder, "The CORDIC Trigonometric Computing Technique", IRE Trans. on Electronic Computers EC-8, Pp 330-334 (1959); this is a computational system wherein a rotation through an angle .theta. can be represented as the summation of several rotations, with each rotation being through one of a special set of angles .alpha., such that ##EQU1## where .xi..sub.i =+1 or -1. Defining .alpha..sub.1 =90.degree., then EQU .alpha..sub.n+2 =tan.sup.-1 (2.sup.-n), n=0, 1, 2, (2)
that is, the total angle is successively approximated using all of plurality n of angles .alpha..sub.i, so that each finer approximation of the angle provides rectangular-coordinate results x.sub.n+1 and y.sub.n+1, which are related to the x.sub.n and y.sub.n rectangular-coordinate values (for the next coarsest approximation) by the pair of equations: EQU x.sub.n+1 =K(.theta.)(x.sub.n +.tau..sub.i y.sub.n /2.sup.n)(3a) EQU y.sub.n+1 =K(.theta.)(y.sub.n -.xi..sub.i x.sub.n /2.sup.n),(3b)
where K(.theta.) is a scale factor equal to cos(.theta.). Since each of the 2.sup.-n factors is in effect a division-by-two done n times, and is provided, for binary numbers, by a one-bit shift for each of the n occurrences, the complex multiplication can, except for the scale factor K(.theta.) multiplication (if needed), be carried out with a set of shift registers and adders. It is highly desirable to provide new apparatus, utilizing this basic CORDIC technique, for multiplying a pair of complex numbers.